home *** CD-ROM | disk | FTP | other *** search
- Subject: Re: CW9 68k & ODF R1?
- Sent: 5/21/96 7:21 AM
- Received: 5/22/96 8:32 AM
- From: Henri Lamiraux, lamiraux@apple.com
- Reply-To: ODF-Interest@CILabs.ORG
- To: OpenDoc Development Framework Discussion List, ODF-Interest@CILabs.
-
- >>3. Has anybody had similar bus error as me? Has anybody fugured out what is
- >>the cause of the bus error, and how to fix it?
- >> I've found out that bus error happened in this calling sequence:
- >>
- >>CNothingFrame::Draw
- >>FW_CGraphicContext::InitGraphicContext
- >>FW_PrivGC_Initialize
- >>FW_FailOnEvError
- >>FW_GetEvError
- >
- >This was a problem with PowerPC vs 68K alignment. Previous compiler had a
- >problem with "#pragma align=xxx" statement.
-
-
- My answer to this question was misleading. The bug with "#pragma
- align=xxx" in previous CW 68K compiler was hidding a bug in ODF. The
- compiler shipping with CW9 fixes this problem revealing the ODF bug. This
- is an easy problem to fix. Open the file FWEnvDef.h in
- ODF:Found:FWCommon:Include:. Look for the following lines (in the #ifdef
- __MWERKS__ block) :
-
- #define FW_FOUR_BYTE_INTS __fourbyteints__
-
- // Force PowerPC alignment
- #pragma options align=power
-
- //=========================================================================
- ===============
- // Symantec C++ -- Macintosh
- //=========================================================================
- ===============
- #elif defined SYMANTEC_CPLUS && !defined _WINDOWS
-
-
- Replace them with:
-
-
- #define FW_FOUR_BYTE_INTS __fourbyteints__
-
- // Force PowerPC alignment
- #ifndef FW_BUILD_MAC68K
- #pragma options align=power
- #endif
-
- //=========================================================================
- ===============
- // Symantec C++ -- Macintosh
- //=========================================================================
- ===============
- #elif defined SYMANTEC_CPLUS && !defined _WINDOWS
-
-
- This problem doesn't affect the ODF Shared library because it was built
- with the Symantec C++ for MPW. After changing those lines rebuilt all
- static libraries and samples.
-